﻿using System;

using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace Maestro_Proveedores.Forms
{
    public partial class ListarProveedoresProximosAVencerse : Form
    {
        /// <summary>
        /// Formulario auxiliar utilizado para mostrar la informacion de aquellos proveedores a los que esta por vencerseles la inscripcion y deben actualizar la informacion.
        /// </summary>
        public ListarProveedoresProximosAVencerse(DataTable dt)
        {
            InitializeComponent();
            
            //---creo las columnas
            Maestro_Proveedores.herramientas.CalendarColumn fecha_vencimiento = new Maestro_Proveedores.herramientas.CalendarColumn();
            DataGridViewTextBoxColumn id = new DataGridViewTextBoxColumn();
            DataGridViewTextBoxColumn razon_social = new DataGridViewTextBoxColumn();
            DataGridViewTextBoxColumn dias = new DataGridViewTextBoxColumn();
            //---les defino las propiedades
            id.Name = "ID";
            razon_social.Name = "RAZON_SOCIAL";
            dias.Name = "DIAS_RESTANTES";
            fecha_vencimiento.Name = "FECHA_VENCIMIENTO";

            id.HeaderText = "ID";
            razon_social.HeaderText = "RAZON SOCIAL";
            dias.HeaderText = "DIAS RESTANTES";
            fecha_vencimiento.HeaderText = "ACTUALIZAR FECHA DE VENCIMIENTO";
            
            id.ReadOnly = true;
            razon_social.ReadOnly = true;
            dias.ReadOnly = true;
            fecha_vencimiento.ReadOnly = false;
            
            //---agrego las columnas al datagridview
            this.dataGridView1.Columns.Add(id);
            this.dataGridView1.Columns.Add(razon_social);
            this.dataGridView1.Columns.Add(dias);
            this.dataGridView1.Columns.Add(fecha_vencimiento);
            
            //---registro los datos
            this.dataGridView1.RowCount = dt.Rows.Count;
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                for (int j = 0; j < dt.Columns.Count; j++)
                {
                    this.dataGridView1.Rows[i].Cells[dt.Columns[j].ColumnName].Value = dt.Rows[i][j];
                }
            }
            this.ShowDialog();
           // padre.Close();           
            
        }
       
        private void guardar_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("¿Desea guardar los cambios?", "", MessageBoxButtons.YesNo).Equals(DialogResult.No))
            {
                return;
            }

            foreach (DataGridViewRow row in this.dataGridView1.Rows)
            {
                this.prV_PROVEEDORTableAdapter.Update_fechaVencimiento(DateTime.Parse(row.Cells["FECHA_VENCIMIENTO"].Value.ToString()).Date, row.Cells["ID"].Value.ToString());
            }
            this.Close();
        }

        private void XLS_Click(object sender, EventArgs e)
        {
            Exportacion.Exportacion.exportar(Exportacion.Exportacion.EnumTipoFormatosExportar.XLS, this.dataGridView1, "ProveedoresProximosAVencerse", false);
        }

        private void helpPictureBox_Click(object sender, EventArgs e)
        {
            Help.ShowHelp(this, ConfiguracionDelSistema.manualDeUsuario, HelpNavigator.TableOfContents);
        }

        private void comoSeHaceLinkLabel_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
        {
            System.Diagnostics.Process.Start(ConfiguracionDelSistema.directorioVideoTutoriales + "registrarProveedores_ventanasEmergentes.wmv");
        }
    }
}
